package Aula18;

import junit.framework.TestCase;

public class TreeSkipImplTest extends TestCase {
	
	public TreeSkip t;
	int array1[] = {5, 2, 8, -1, 1, 1};
	int array2[] = {4, 0, 5, 3, 10, 8};

	protected void setUp() throws Exception {
		t = new TreeSkipImpl();
	}

	public void testIniciarArvore() {
		assertEquals(-1, t.iniciarArvore(array1).ret);
		assertFalse(t.iniciarArvore(array2).ret == -1);
	}

	public void testIniciarSkip() {
		assertEquals(-1, t.iniciarSkip(array1).ret);
		assertFalse(t.iniciarSkip(array2).ret == -1);
	}

	public void testInserirElementoArvore() {
		assertEquals(-1, t.inserirElementoArvore(1).ret);
		t.iniciarArvore(array2);
		assertEquals(1, t.inserirElementoArvore(1).ret);
		assertEquals(-1, t.inserirElementoArvore(-1).ret);
		assertEquals(0, t.inserirElementoArvore(1).ret);
	}

	public void testInserirElementoSkip() {
		assertEquals(-1, t.inserirElementoSkip(1).ret);
		t.iniciarSkip(array2);
		assertEquals(1, t.inserirElementoSkip(1).ret);
		assertEquals(-1, t.inserirElementoSkip(-1).ret);
		assertEquals(0, t.inserirElementoSkip(1).ret);
	}

	public void testProcurarArvore() {
		assertEquals(-1, t.procurarArvore(1).ret);
		t.iniciarArvore(array2);
		assertEquals(0, t.procurarArvore(1).ret);
		assertEquals(1, t.procurarArvore(4).ret);
		t.inserirElementoArvore(1);
		assertEquals(1, t.procurarArvore(1).ret);
		assertEquals(-1, t.procurarArvore(-1).ret);
	}

	public void testProcurarSkip() {
		assertEquals(-1, t.procurarSkip(1).ret);
		t.iniciarSkip(array2);
		assertEquals(0, t.procurarSkip(1).ret);
		assertEquals(1, t.procurarSkip(4).ret);
		t.inserirElementoSkip(1);
		assertEquals(1, t.procurarSkip(1).ret);
		assertEquals(-1, t.procurarSkip(-1).ret);
	}

}
